package com.tfd.blog.repository;

import com.tfd.blog.domain.Label;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.Collection;
import java.util.List;

/**
 * @author TangFD@HF 2019/5/8
 */
@Repository
public interface LabelRepository extends JpaRepository<Label, String> {

    /**
     * 根据名称获取标签列表
     *
     * @param names 标签名称
     * @return 标签列表
     */
    List<Label> findByNameIn(Collection<String> names);

    /**
     * 根据标签Id列表批量获取标签信息
     *
     * @param labelIds 标签Id列表
     * @return 标签信息
     */
    List<Label> findByIdIn(Collection<String> labelIds);

    Page<Label> findByNameLike(String name, Pageable pageable);
}
